課程資訊
課程名稱
高等作業系統
Advanced Operating System 
開課學期
111-2 
授課對象
電機資訊學院  資訊網路與多媒體研究所  
授課教師
薛智文 
課號
CSIE7010 
課程識別碼
922 M1360 
班次
 
學分
3.0 
全/半年
半年 
必/選修
選修 
上課時間
星期三6,7,8(13:20~16:20) 
上課地點
資110 
備註
總人數上限:40人 
 
課程簡介影片
 
核心能力關聯
核心能力與課程規劃關聯圖
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

We (including you) will introduce the design principles or realization practice of fundamental OS components or advanced OS features in Linux, real-time OS, embedded OS, distributed OS, Blockchain, or even metaverse. By the autonomy and sharing philosophy of blockchain, nowadays, it is more likely we can participate and implement new features in an OS to run autonomously. Welcome those who would like to discuss, learn, and pratice more in realization of (y/our) new OS features.

We will have 16-week lectures plus 2 weeks for those who would like to dig more with special projects. 

課程目標
* Understand important OS features and migration.
* Understand how to design and realize new OS features.
* Lecuring wth dicssion and student presentation. 
課程要求
* Basic understanding of OS concepts.
* Active participation in class.
* Add more requests in Lecture Notes if any. 
預期每週課後學習時數
2-8 hours 
Office Hours
另約時間 備註: Make an appointment by cwhsueh@csie.ntu.edu.tw. 
指定閱讀
Please refer to course main page. 
參考書目
Please refer to course main page. 
評量方式
(僅供參考)
 
No.
項目
百分比
說明
1. 
refer to course main page 
100% 
Those who would like to waive for PhD qualification are different. 
 
針對學生困難提供學生調整方式
 
上課形式
提供學生彈性出席課程方式
作業繳交方式
學生與授課老師協議改以其他形式呈現
考試形式
書面(口頭)報告取代考試
其他
由師生雙方議定
課程進度
週次
日期
單元主題
第1週
2/22  Overview (3 weeks)
*Basic Concepts
  .Turing Complete (What can an OS do?)
 .Scheduling, Processing, Synchronization, Memory, Storage
 .Timing, Networking
 .Protection, Security, Privacy
*Basic Technologies
 .Task Granularity
  .Tasklet, (multi-)Threading, Smart Contract
 .Transaction (memory), Replication, Recovery and Fault Tolerance
 .Virtual Machine, Virtualization
*Design Concepts
 .Consensus
 .ACID, BASE, FLP, CAP
 .Globle Event Ordering
 .Service Oriented Architecture
 .Zero Knowledge
 .Multi-Party Computation 
第4週
3/15  Main OSs (4 weeks)
*Linux, Unix, Windows, MAC
*Real-Time OS
  .Real-time Scheduling
    .Periodic, Distance-contrained
      .RM, EDF, Pinwheel
  .Priority Inversion/Inheritance/Ceiling
*Embedded OS
  .RPi, Android
  .FreeRTOS
  .A/Synchronous I/O
*Distributed OS
  .Abstraction
    .Coherent memory, File System, Transaction, Persistence, Coordinator, Reliability
  .Transparency
    .Location, Access, Migration, Replication, Concurrency, Failure, Performance, Size/Scale, Revision, Control, Data, Parallelism
  .Browser, Blockchain, Metaverse 
第7週
4/5  Spring break
Proposal due 
第9週
4/22  midterm (take-home) 
第10週
4/26  Application OSs (3 weeks)
*Crome OS
*Browser
  .Yacy
*Blockchain, a trusted distributed real-time OS
*Metaverse OS 
第13週
5/17  Related Issues (3 weeks)
*Open Source
  .Licensing
    .GPL, LGPL, MIT, Apache, BSD, BL
*UI, UX
  .desmos.com
*LevelDB, IPFS
*FinTech, InsurTech, RegTech, LegalTech, SupTech 
第16週
6/7  Project Demo